home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / MacTech® Magazine / Volume 06 - 1990 / 06.02 Feb 90 / FuzzyBrush source / BWit.h next >
Encoding:
C/C++ Source or Header  |  1989-11-07  |  2.5 KB  |  120 lines  |  [TEXT/KAHL]

  1. /*
  2.  *  BWit.h
  3.  *    Linda McLennan
  4.  
  5.     COPYRIGHT © 1989 Silicon Beach Software, Inc.
  6.     Permission is hereby granted to the purchaser
  7.     to use this source code for the limited
  8.     purpose of producing and distributing compiled
  9.     object files and applications.  The source
  10.     code is and shall remain the sole property of
  11.     Silicon Beach Software, Inc., and except as
  12.     expressly provided, purchaser obtains no
  13.     right, title or interest in the source code.
  14.     Distribution of the un-compiled or text
  15.     versions of this source code is prohibited.
  16.  */
  17.  
  18. /* interface version number */
  19. #define    verNum                1
  20.  
  21. /* paint mode constants */
  22. #define paintOpaque            patCopy
  23. #define    paintTransparent    patOr
  24. #define    paintOnBlack        notPatBic
  25. #define    paintInvert            patXor
  26.  
  27. /* toolAbout return codes */
  28. #define    noAbout            1
  29. #define    textAbout        2
  30.  
  31. /* values for CursorType */
  32. #define    defaultCursor    0
  33. #define    resourceCursor    1
  34. #define    lineWidthCursor    2
  35. #define    brushCursor        3
  36. #define    passedCursor    4
  37.     
  38. /* values for type of symmetry support */
  39. #define    noSymmetry        0
  40. #define    autoSymmetry    1
  41. #define    passSymmetryPts    2    
  42.  
  43. /* values for autoPaint */
  44. #define    noAutoPaint        0
  45. #define    autoPaintPt        1
  46. #define    autoPaintLine    2    
  47.  
  48. /* values for requestCode field */
  49. #define    editBrushes        1
  50. #define    editSICNs        2
  51.  
  52. /* call selector codes */
  53. #define toolAbout            0
  54.  
  55. #define    toolSelected        11
  56. #define    toolDblClick        12
  57. #define    toolKeyDown            13
  58. #define    toolMouseDown        14
  59. #define    toolStillDown        15
  60. #define    toolMouseUp            16
  61. #define    toolMenuEvent        17
  62. #define    toolMenuInsert        18
  63. #define    toolMenuDelete        19
  64. #define    toolIdle            20
  65. #define    toolDeselected        21
  66. #define    toolRequestComp        22
  67.  
  68. typedef    struct
  69. {
  70.     short            toolID;    
  71.     short            spare1;
  72.     short            spare2;
  73.     short            spare3;
  74.     short            spare4;
  75.     short            spare5;
  76.     short            spare6;
  77.     short            spare7;
  78.  
  79.     Point            newPoint;
  80.     Point            oldPoint;
  81.     Rect            updateRect;
  82.     
  83.     Boolean            mouseIsDown;
  84.     Boolean            shiftIsDown;
  85.     Boolean            cmdIsDown;
  86.     Boolean            optIsDown;
  87.     Boolean            dblClick;
  88.     Boolean            paintMultiple;
  89.     Boolean            fillPatNone;
  90.     Boolean            linePatNone;
  91.     Boolean            changeCursor;
  92.     Boolean            toolActive;
  93.     Boolean            paintCenter;
  94.     Boolean            usesScratch;
  95.     Boolean            usesConstrain;
  96.     Boolean            changeFillPat;
  97.     
  98.     Cursor            newCursor;
  99.     Bits16            curBrush;
  100.     Pattern            curFillPat;
  101.     Handle            curPatList;
  102.     EventRecord        *evntRecPtr;
  103.  
  104.     short            autoPaint;
  105.     short            cursorType;
  106.     short            symmetry;
  107.     short            spare8;
  108.     short            menuID;
  109.     short            menuItem;
  110.  
  111.     short            numPts;
  112.     Point            (*mirrorPts)[9][2];
  113.  
  114.     BitMap            scratchBits;
  115.     BitMap            undoBits;
  116.     Handle            sicnListHdl;
  117.     short            sicnIndex;
  118.     short            requestCode;    
  119. } ToolDataRec, *ToolDataPtr;
  120.